home *** CD-ROM | disk | FTP | other *** search
/ 8bitfiles.net/archives / archives.tar / archives / geos-archive / GEOS-D64 / GeoThek Programme (19xx)(-)(de)[gt126b].d64 / ramlink install (.txt) < prev    next >
Commodore BASIC  |  2019-04-13  |  5KB  |  246 lines

  1. 100 XT=49152
  2. 110 RL=0:ID=PEEK(186)
  3. 120 DIM FP%(32)
  4. 130 DIM FP$(32)
  5. 199 :
  6. 200 T0$="[192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][155]"
  7. 999 :
  8. 1000 POKE53280,0:POKE53281,0
  9. 1010 PRINT"[144][147][155]RAMLINK INSTALLATION 1.0"
  10. 1020 PRINTT0$
  11. 1030 GOSUB29000
  12. 1040 GOSUB30000
  13. 1050 GOSUB31000
  14. 1060 PRINT"[144][147][155]RAMLINK INSTALLATION 1.0"
  15. 1070 PRINTT0$
  16. 1099 :
  17. 1100 PRINT"1. ";:GOSUB60000
  18. 1110 PRINT"2. ";:GOSUB50000
  19. 1120 PRINT"3. ";:GOSUB60200
  20. 1130 PRINT"4. ";:GOSUB40000
  21. 1140 PRINT"5. ";:GOSUB60100
  22. 1150 PRINT"6. ";:GOSUB44000
  23. 1160 PRINT"[155][147]INSTALLATION COMPLETE !"
  24. 1170 PRINTT0$
  25. 1180 PRINT"ALL DONE!"
  26. 1190 END
  27. 1199 :
  28. 29000 REM LAUFWERK WAEHLEN
  29. 29010 PRINT"[144][147][155]RAMLINK INSTALLATION 1.0"
  30. 29020 PRINTT0$
  31. 29030 PRINT "LOAD 'RL.INI'-FILE FROM DRIVE  ";ID
  32. 29040 POKE198,0:INPUT "[145]";A0
  33. 29050 IF A0>=8 AND A0<=31 THEN 29070
  34. 29060 GOTO 29040
  35. 29070 OPEN15,A0,15:CLOSE15
  36. 29080 IF ST<>0 THEN 29040
  37. 29099 :
  38. 29100 PRINT"[144][147][155]RAMLINK INSTALLATION 1.0"
  39. 29110 PRINTT0$
  40. 29120 ID=A0:RETURN
  41. 29999 :
  42. 30000 REM GET RAMLINK-DEVICE
  43. 30010 PRINT"   SEARCHING FOR RAMLINK..."
  44. 30020 A0=8:RL=0
  45. 30030 POKE144,0:OPEN15,A0,15:CLOSE15:IFST<>0THENGOTO30090
  46. 30040 A$="":OPEN15,A0,15
  47. 30050 PRINT#15,"M-R"+CHR$(160)+CHR$(254)+CHR$(6)
  48. 30060 FORI=1TO6:GET#15,B$:A$=A$+B$:NEXT
  49. 30070 CLOSE15
  50. 30080 IFA$="CMD RL"THEN30200
  51. 30090 A0=A0+1:IFA0<32THEN30030
  52. 30100 PRINT"[155][147]INSTALLATION ERROR !"
  53. 30110 PRINTT0$
  54. 30120 PRINT"RAMLINK NOT AVAILABLE !"
  55. 30130 END
  56. 30199 :
  57. 30200 RL=A0
  58. 30210 PRINT"[144][147][155]RAMLINK INSTALLATION 1.0":PRINTT0$
  59. 30220 RETURN
  60. 30299 :
  61. 31000 REM SEARCHING FOR RL.INI
  62. 31010 PRINT"   SEARCHING FOR FILE 'RL.INI'..."
  63. 31020 POKE144,0:OPEN15,ID,15:CLOSE15
  64. 31030 IF(ST<>0)THEN31130
  65. 31099 :
  66. 31100 OPEN15,ID,15,"R0:RL.INI=RL.INI"
  67. 31110 INPUT#15,A0,A$,A$,A$
  68. 31120 CLOSE15:IFA0=63THENRETURN
  69. 31130 PRINT"[155][147]INSTALLATION ERROR !"
  70. 31140 PRINTT0$
  71. 31150 PRINT"CAN'T FIND FILE 'RL.INI' OR DRIVE"ID"[157]:"
  72. 31160 PRINT"IS NOT CONNECTED !"
  73. 31170 END
  74. 31999 :
  75. 40000 REM CREATE PARTITIONS
  76. 40010 PRINT"CREATE PARTITION TABLE..."
  77. 40020 OPEN15,ID,15,"R0:RL.INI=RL.INI"
  78. 40030 INPUT#15,A0,A$,A$,A$
  79. 40040 CLOSE15:IFA0=63THEN40100
  80. 40050 PRINT"[155][147]INSTALLATION ERROR !"
  81. 40060 PRINTT0$
  82. 40070 PRINT"CAN'T FIND FILE 'RL.INI'!"
  83. 40090 END
  84. 40099 :
  85. 40100 OPEN2,ID,2,"RL.INI,U,R"
  86. 40110 IF(ST=0)THENGOSUB41000:GOTO40110
  87. 40120 CLOSE2
  88. 40130 PRINT "   [192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192]"
  89. 40140 PRINT"   "RIGHT$("00"+MID$(STR$(PA),2),2)" PARTITIONS CREATED."
  90. 40150 PRINT"   "RIGHT$("00000"+MID$(STR$(MX),2),5)" FREE BLOCKS LEFT."
  91. 40160 RETURN
  92. 40199 :
  93. 40200 PRINT"[155][147]INSTALLATION ERROR !"
  94. 40210 PRINTT0$
  95. 40220 PRINT"DATA-ERROR IN 'RL.INI'-FILE !"
  96. 40230 END
  97. 40999 :
  98. 41000 INPUT#2,PN,PT,PN$,PS
  99. 41010 IFPN<1ORPN>31THEN40200
  100. 41099 :
  101. 41100 IFPT=  0THEN40200
  102. 41110 IFPT=  5THEN40200
  103. 41120 IFPT=  6THEN40200
  104. 41130 IFPT>  7THEN40200
  105. 41199 :
  106. 41200 PN$=LEFT$(PN$,16)
  107. 41210 IFLEN(PN$)=16THEN41300
  108. 41220 PN$=PN$+CHR$(160)
  109. 41230 GOTO41210
  110. 41299 :
  111. 41300 IFPT=1THENPS=PS
  112. 41310 IFPT=2THENPS=683
  113. 41320 IFPT=3THENPS=1366
  114. 41330 IFPT=4THENPS=3200
  115. 41340 IFPT=7THENPS=PS
  116. 41350 IFPS=-1THENPS=INT(MX/256)*256
  117. 41360 PRINT"   * "PN$" => ";
  118. 41399 :
  119. 42000 IF(MX-PS)<0THEN42200
  120. 42010 BA=XT+256+PN*32+2
  121. 42020 ZH=INT(SA/(256^2))
  122. 42030 ZM=INT((SA-ZH)/256)
  123. 42040 ZL=SA-((ZH*256^2)+(ZM*256))
  124. 42050 SH=INT(PS/(256^2))
  125. 42060 SM=INT((PS-SH)/256)
  126. 42070 SL=PS-((SH*256^2)+(SM*256))
  127. 42080 A$=CHR$(PT)+CHR$(0)+CHR$(0)+PN$
  128. 42090 A$=A$+CHR$(ZH)+CHR$(ZM)+CHR$(ZL)
  129. 42100 A$=A$+CHR$(0)+CHR$(0)+CHR$(0)
  130. 42110 A$=A$+CHR$(0)+CHR$(0)
  131. 42120 A$=A$+CHR$(SH)+CHR$(SM)+CHR$(SL)
  132. 42130 IFPEEK(BA)<>0THEN42200
  133. 42140 FORA0=0TO29
  134. 42150 POKEBA+A0,ASC(MID$(A$,1+A0,1))
  135. 42160 NEXT
  136. 42170 GOTO42300
  137. 42200 PRINT"CANCELLED !"
  138. 42210 RETURN
  139. 42299 :
  140. 42300 PRINT"OK !"
  141. 42310 SA=SA+PS:MX=MX-PS:PA=PA+1
  142. 42320 IFPT=1THENGOSUB43000
  143. 42330 IFPT=2THENGOSUB43000
  144. 42340 IFPT=3THENGOSUB43000
  145. 42350 IFPT=4THENGOSUB43000
  146. 42360 RETURN
  147. 42999 :
  148. 43000 FP%(PA)=PN:FP$(PA)=PN$:RETURN
  149. 43099 :
  150. 44000 REM FORMAT PARTITIONS
  151. 44010 PRINT"FORMATTING PARTITIONS..."
  152. 44020 FORA0=1TO31
  153. 44030 IFFP%(A0)=0THEN44080
  154. 44040 A$=RIGHT$("00"+MID$(STR$(FP%(A0)),2),2)
  155. 44050 OPEN15,RL,15,"UJ:"
  156. 44060 PRINT#15,"N"+A$+":"+FP$(A0)+",RL"
  157. 44070 INPUT#15,A$,B$,C$,D$:CLOSE15
  158. 44080 NEXT
  159. 44090 RETURN
  160. 44099 :
  161. 50000 REM GET RAMLINK-SIZE
  162. 50010 PRINT"TESTING RAMLINK-SIZE..."
  163. 50020 BA=XT+256
  164. 50030 SA=0
  165. 50040 BH=PEEK(BA+21):SH=PEEK(BA+29)
  166. 50050 BM=PEEK(BA+22):SM=PEEK(BA+30)
  167. 50060 BL=PEEK(BA+23):SL=PEEK(BA+31)
  168. 50070 OS=BH*256^2+BM*256+BL
  169. 50080 SI=SH*256^2+SM*256+SL
  170. 50090 MX=OS-SA
  171. 50099 :
  172. 50100 MM=OS+SI
  173. 50110 PRINT"   (MEMORY LOCATED: ";
  174. 50120 PRINTRIGHT$("00000"+MID$(STR$(INT(MM/4)),2),5)" KBYTES)"
  175. 50130 RETURN
  176. 59990 END
  177. 60000 REM READ PARTITION TABLE
  178. 60010 PRINT"READING PARTITION TABLE..."
  179. 60020 TR=1:AD=XT+256
  180. 60030 FORSE=0TO4
  181. 60040 GOSUB61000
  182. 60050 AD=AD+256
  183. 60060 NEXT
  184. 60070 RETURN
  185. 60099 :
  186. 60100 REM WRITE PARTITION TABLE
  187. 60110 PRINT"WRITING PARTITION TABLE..."
  188. 60120 TR=1:AD=XT+256
  189. 60130 FORSE=0TO4
  190. 60140 GOSUB61100
  191. 60150 AD=AD+256
  192. 60160 NEXT
  193. 60170 RETURN
  194. 60199 :
  195. 60200 REM CLEAR PARTITION TABLE
  196. 60210 PRINT"CLEARING PARTITION TABLE..."
  197. 60220 FORA0=XT+256+32TOXT+256+255
  198. 60230 POKEA0,0:NEXT
  199. 60240 FORA0=2TO4:FORA1=2TO255
  200. 60250 POKEXT+A0*256+A1,0
  201. 60260 NEXT:NEXT
  202. 60270 RETURN
  203. 60299 :
  204. 61000 REM READ SECTOR TO BUFFER
  205. 61010 SYS57513
  206. 61020 POKE56865,TR:POKE56866,SE
  207. 61030 POKE56867,AD-(INT(AD/256)*256)
  208. 61040 POKE56868,INT(AD/256)
  209. 61050 POKE56869,255:POKE56864,128
  210. 61060 SYS65057
  211. 61070 RETURN
  212. 61099 :
  213. 61100 REM WRITE BUFFER TO SEKTOR
  214. 61110 SYS57513
  215. 61120 POKE56865,TR:POKE56866,SE
  216. 61130 POKE56867,AD-(INT(AD/256)*256)
  217. 61140 POKE56868,INT(AD/256)
  218. 61150 POKE56869,255:POKE56864,144
  219. 61160 SYS65057
  220. 61170 RETURN
  221. 61199 :
  222. 62000 REM CREATE PARTITIONS
  223. 63000 REM NOT CREATED
  224. 63010 FORA0=0TO30:B%(A0)=0:NEXT
  225. 63020 B%(0)=0:RETURN
  226. 63099 :
  227. 63100 REM NATIVE-MODE
  228. 63110 FORA0=0TO30:B%(A0)=0:NEXT
  229. 63120 B%(0)=1:RETURN
  230. 63199 :
  231. 63200 REM 1541 EMULATION-MODE
  232. 63210 FORA0=0TO30:B%(A0)=0:NEXT
  233. 63220 B%(0)=2:RETURN
  234. 63299 :
  235. 63300 REM 1571 EMULATION-MODE
  236. 63310 FORA0=0TO30:B%(A0)=0:NEXT
  237. 63320 B%(0)=3:RETURN
  238. 63399 :
  239. 63400 REM 1581 EMULATION-MODE
  240. 63410 FORA0=0TO30:B%(A0)=0:NEXT
  241. 63420 B%(0)=4:RETURN
  242. 63499 :
  243. 63700 REM DACC
  244. 63710 FORA0=0TO30:B%(A0)=0:NEXT
  245. 63720 B%(0)=7:RETURN
  246.